<!doctype html>
<html lang="en">
	<head>
		<meta charset="utf-8">
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<title>Template • TodoMVC</title>
		<link rel="stylesheet" href="node_modules/todomvc-common/base.css">
		<link rel="stylesheet" href="node_modules/todomvc-app-css/index.css">
		<!-- CSS overrides - remove if you don't need it -->
		<link rel="stylesheet" href="css/app.css">
	</head>
	<body>
		<section class="todoapp" id="todoapp">
			<header class="header">
				<h1>todos</h1>
				<!--添加任务, keyup.enter 回车键监听-->
				<input @keyup.enter="addItem" class="new-todo" placeholder="What needs to be done?" v-app-focus>
			</header>
			<!-- This section should be hidden by default and shown when there are todos -->
			<!--修改: items.length 值为 0 就是 false -->
			<!-- 方式3：可使用 Vue 提供的 template 元素，页面渲染后不会有 template 元素， 
				但是不能使用 v-show, 因为template渲染后就消失了， 而v-show是 display:none控制显示隐藏的。 
				需要使用 v-if 才可以 -->
			<template v-if="items.length">
				<section class="main">
					<!-- 添加计算属性 toggleAll 双向绑定-->
					<input v-model="toggleAll" id="toggle-all" class="toggle-all" type="checkbox">
					<label for="toggle-all">Mark all as complete</label>
					<ul class="todo-list">
						<!-- 三种状态：未完成（没有样式）、已完成（.completed ）、编辑中( .editing ) --> 
						<!--修改:1、v-for迭代; 2、:class={key为class样式名,value为获取的数据true或false}-->
						<li v-for="(item, index) in filterItems" :key="index" :class="{completed:item.completed,editing: item === currentItem}">
							<div class="view">
								<!-- 修改：1、v-model 绑定状态值是否选中 -->
								<input class="toggle" type="checkbox" v-model="item.completed">
								<!-- 修改：1、{{ content }} 显示内容 -->
								<label @dblclick="toEdit(item)">{{item.content}}</label>
								<!--修改: 1、:value 绑定id删除 -->
								<button class="destroy" :value="item.id" @click="removeItem(index)"></button>
							</div>
							<!-- :value 单向绑定 -->
							<input class="edit" :value="item.content" @keyup.esc="cancelEdit" @keyup.enter="finishEdit(item, index, $event)" 
							@blur="finishEdit(item, index, $event)" v-todo-focus="item === currentItem">
						</li>
					</ul>
				</section>
				<!-- This footer should hidden by default and shown when there are todos -->
				<!--修改: items.length 值为 0 就是 false -->
				<footer class="footer">
					<!-- This should be `0 items left` by default -->
					<span class="todo-count"><strong>{{remaining}}</strong> item{{remaining === 1 ? '' : 's'}} left</span>
					<!-- Remove this if you don't implement routing -->
					<ul class="filters">
						<li>
							<a :class="{selected:filterStatus==='all'}" href="#/">All</a>
						</li>
						<li>
							<a :class="{selected:filterStatus==='active'}" href="#/active">Active</a>
						</li>
						<li>
							<a :class="{selected:filterStatus==='completed'}" href="#/completed">Completed</a>
						</li>
					</ul>
					<!-- Hidden if no completed items are left ↓ -->
					<!-- 当前总任务数> 未完成任务数时，显示清除按钮 -->
					<button v-show="items.length > remaining" @click="removeCompleted" class="clear-completed">Clear completed</button>
				</footer>
			</template>

		</section>
		<footer class="info">
			<p>Double-click to edit a todo</p>
			<!-- Remove the below line ↓ -->
			<p>Template by <a href="http://sindresorhus.com">Sindre Sorhus</a></p>
			<!-- Change this out with your name and url ↓ -->
			<p>Created by <a href="http://todomvc.com">you</a></p>
			<p>Part of <a href="http://todomvc.com">TodoMVC</a></p>
		</footer>
		<!-- Scripts here. Don't remove ↓ -->
		<script src="node_modules/vue/dist/vue.js"></script>
		<script src="node_modules/todomvc-common/base.js"></script>
		<script src="js/app.js"></script>
	</body>
</html>
